package com.mmall.service;

import com.github.pagehelper.PageInfo;
import com.mmall.common.ServerResponse;

import java.util.Map;

/**
 * @author:lzq
 * @date: 2018/3/28 11:53
 */
public interface IOrderService {

    ServerResponse pay(Integer userId, Long orderNo, String path);//支付宝当面付

    ServerResponse alipayCallback(Map<String,String> params);//支付宝回调函数

    ServerResponse queryOrderStatus(Integer userId,Long orderNo);//查询该用户的订单状态

    ServerResponse createOrder(Integer userId,Integer shippingId);//生成订单

    ServerResponse cancel(Integer userId,Long orderNo);//取消订单

    ServerResponse getOrderCartProduct(Integer userId);//获取购物车中的商品详情，包括总价，productList等

    ServerResponse getOrderDetail(Integer userId,Long orderNo);//获取订单详情

    ServerResponse<PageInfo> getOrderList(Integer userId, int pageNum, int pageSize);//根据用户id获取订单列表



    //管理员的相关操作
    ServerResponse managerList(int pageNum,int paegSize);

    ServerResponse managerDetail(Long orderNo);//后台管理员获取订单详情

    ServerResponse managerSearch(Long orderNo,int pageNum,int pageSize);//根据订单号搜索订单详情，并对其中商品进行分页

    ServerResponse managerSendGood(Long orderNo);//更新订单状态

    void closeOrder(int hour);//定时关闭订单

}
